export type ToolInstallState = "initial" | "downloading" | "unziping" | "installing";

/**
 * 安装工具版本信息
 */
export interface ToolInstallVersionItem {
  /**
   * 软件ID
   */
  id: string;
  /**
   * 显示名称
   */
  name: string;
  /**
   * 版本名称
   */
  version: string;
  /**
   * 下载地址
   */
  url: string;
  /**
   * 位度
   */
  bitness?: 32 | 64;
  /**
   * 版本类型
   */
  edition?: string;
  /**
   * 扩展版本1
   */
  version1?: string;
  /**
   * 扩展版本2
   */
  version2?: string;
  /**
   * 安装路径(相对于{@link GenericEnvStore#installDir})
   */
  installPath?: string;
  /**
   * 是否解压到临时目录
   * <br />
   * eg: /path/to/<installDir>/tmp/<installPath>
   */
  extraToTempdir?: boolean;
  /**
   * 标签
   */
  tag?: string;
  /**
   * 发布时间
   */
  date?: string;
  /**
   * 文件大小
   */
  size?: string;
}

/**
 * 本地安装版本信息
 */
export interface LocalVersionItem {
  /**
   * 显示名称
   */
  displayName?: string;
  /**
   * 版本名称
   */
  version: string;
  /**
   * 本地安装目录
   */
  installPath: string;
}

/**
 * python程序devil-data抓取的软件数据版本信息
 */
export interface ResourceVersionItem {
  version: string;
  name: string;
  url: string;
}

/**
 * python程序devil-data抓取的软件数据
 */
export interface ResourceVersionResponse {
  versions: ResourceVersionItem[];
}
